package com.zhuyuan.system.service;

import com.zhuyuan.database.base.BaseService;
import com.zhuyuan.system.api.domain.SysMenu;
import com.zhuyuan.system.domain.vo.RouterVo;
import com.zhuyuan.system.domain.vo.SysMenuVo;

import java.util.List;

/**
 * @Author: 张琳凯
 * @Description: TODO
 * @DateTime: 2025/2/19 16:01
 **/
public interface ISysMenuService extends BaseService<SysMenu> {

    /**
     * 获取所有菜单
     */
    List<SysMenuVo> getALLMenuTree(SysMenu sysMenu);
    /**
     * 获取所有权限
     */
    List<String> getALLPerm();
    /**
     * 根据用户获取菜单列表
     */
    List<SysMenuVo> getMenuTreeByUid(SysMenu sysMenu, Long id);
    /**
     * 根据用户获取权限列表
     */
    List<String> getPermTreeByUid(Long id);
    /**
     * 根据用户获取路由信息
     */
    List<RouterVo> getRouterTreeByUid(Long id);
}
